package com.hx.util.string;

import java.util.ArrayList;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Set;
import java.util.regex.Pattern;

public class StringToNumberUtil {
	
	/**
	 * 转换成整形 Byte
	 * @param str String 原始字符串
	 * @return Byte 转换后整形
	 */
	public static Byte toByte(String str) {
		Byte bytes=0;
		try{
			bytes = Byte.parseByte(str);
		}catch(NumberFormatException e){
			bytes=0;
		}catch(Exception ee){
			bytes=0;
		}
		return bytes;
	}
	
	/**
	 * 转换成整形 Integer
	 * @param str String 原始字符串
	 * @return Integer 转换后整形
	 */
	public static Integer toInteger(String str) {
		Integer ints=0;
		try{
			ints = Integer.parseInt(str);
		}catch(NumberFormatException e){
			ints=0;
		}catch(Exception ee){
			ints=0;
		}
		return ints;
	}
	
	/**
	 * 转换成整形 Integer
	 * @param str String 原始字符串
	 * @return Integer 转换后整形
	 */
	public static Integer toInteger(String str,Integer def) {
		Integer ints = 0;
		try{
			ints = Integer.parseInt(str);
		}catch(NumberFormatException e){
			return def;
		}catch(Exception ee){
			return def;
		}
		return ints;
	}
	
	/**
	 * 转换成长整型 Long
	 * @param str String 原始字符串
	 * @return Long 转换后整形
	 */
	public static Long toLong(String str) {
		Long longs=0L;
		try{
			longs = Long.parseLong(str);
		}catch(NumberFormatException e){
			longs=0L;
		}catch(Exception ee){
			longs=0L;
		}
		return longs;
	}
	
	/**
	 * 转换成浮点型 Float
	 * @param str String 原始字符串
	 * @return Float 转换后整形
	 */
	public static Float toFloat(String str) {
		Float flosts=0F;
		try{
			flosts = Float.parseFloat(str);
		}catch(NumberFormatException e){
			flosts=0F;
		}catch(Exception ee){
			flosts=0F;
		}
		return flosts;
	}
	
	/**
	 * 转换成浮点型 Double
	 * @param str String 原始字符串
	 * @return Double 转换后整形
	 */
	public static Double toDouble(String str) {
		Double doubles=0.0;
		try{
			doubles = Double.parseDouble(str);
		}catch(NumberFormatException e){
			doubles=0.0;
		}catch(Exception ee){
			doubles=0.0;
		}
		return doubles;
	}
	/**
	 * 转换成浮点型 Double
	 * @param str String 原始字符串
	 * @return Double 转换后整形
	 */
	public static Double toDouble(String str,Double def) {
		Double doubles=0.0;
		try{
			doubles = Double.parseDouble(str);
		}catch(NumberFormatException e){
			doubles=def;
		}catch(Exception ee){
			doubles=def;
		}
		return doubles;
	}
}
